<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>闭包的应用</title>
</head>
<body>
<script>
    /*
 *  闭包就是一个作用域使用另外一个作用域的值
 *      打车起步价13(3公里内), 之后没多一个公里增加5元, 用户在输入公里数就可以计算打车的价格
 *      如果有拥堵的情况, 总价格收取10元
 *      function fn() {}
 *      fn()
 */

    let car = (function() {
        let start = 13
        let total = 0
        return {
            price: function (n) {
                if (n <= 3) {
                    total = start
                } else {
                    total = start + (n - 3) * 5
                }
                return total
            },
            // 拥堵之后
            crowding: function (flag) {
                return flag ? total + 10 : total
            }
        }
    })();

    console.log(car.price(5)) // 23
    console.log(car.price(1)) // 13

    console.log(car.price(1)) // 13
    console.log(car.crowding(true)) // 23
</script>
</body>
</html>